package com.richapp.launcher.database.system.mode;

import java.util.List;

import com.j256.ormlite.field.DatabaseField;
import com.j256.ormlite.table.DatabaseTable;

@DatabaseTable(tableName = "scene")
public class SceneModel {

	@DatabaseField(generatedId = true)
	private int id;
	
	@DatabaseField(columnName = "sceneName",unique = true)
	private String sceneName;	//情景名称
	
	@DatabaseField(columnName = "sceneType",defaultValue = "0")
	private int sceneType;	//情景触发类型，被动 1，主动 0
	
	@DatabaseField(columnName = "openFlag",defaultValue = "true")
	private String openFlag; //情景开启状态

    @DatabaseField(columnName = "iconName",canBeNull = false)
    private String iconName; //情景图标名称
	
	@DatabaseField(columnName = "checkModel",defaultValue = "true")
	private String checkModel; //情景条件检查模式，单一 false，全部 true 
	
	@DatabaseField(columnName = "createTime",defaultValue = "0")
	private long createTime; //情景创建时间

	@DatabaseField(columnName = "sceneBindKey",defaultValue = "00")
	private String sceneBindKey;	//绑定的按键

    @DatabaseField(columnName = "deviceNumber",defaultValue = "00")
    private String deviceNumber;	//绑定的设备编号

	@DatabaseField(columnName = "statusCycleFlag",defaultValue = "true")
	private String statusCycleFlag;	//状态周期

	@DatabaseField(columnName = "boxCpuId",canBeNull = false)            //机顶盒CPU ID
	private String boxCpuId;
	
	private List<ConditionTimeModel> timeModelList = null;      //时间条件列表
	private List<ConditionSensorModel> sensorModelList = null;  //传感条件列表
	private List<ConditionStatusModel> statusModelList = null;  //状态条件列表
	private List<ActionModel> actionModelList = null;           //动作列表
	private List<ActionInfraredModel> actionInfraredModelList = null;	//家电动作列表
	
	
	public SceneModel() {
	
	}

	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}

	public String getSceneName() {
		return sceneName;
	}

	public void setSceneName(String sceneName) {
		this.sceneName = sceneName;
	}

	public int getSceneType() {
		return sceneType;
	}

	public String getOpenFlag() {
		return openFlag;
	}

	public void setOpenFlag(String openFlag) {
		this.openFlag = openFlag;
	}

    public String getIconName() {
        return iconName;
    }

    public void setIconName(String iconName) {
        this.iconName = iconName;
    }

    public void setSceneType(int sceneType) {
		this.sceneType = sceneType;
	}

	public String getCheckModel() {
		return checkModel;
	}

	public void setCheckModel(String checkModel) {
		this.checkModel = checkModel;
	}

	public long getCreateTime() {
		return createTime;
	}

	public void setCreateTime(long createTime) {
		this.createTime = createTime;
	}

	public String getSceneBindKey() {
		return sceneBindKey;
	}

	public void setSceneBindKey(String sceneBindKey) {
		this.sceneBindKey = sceneBindKey;
	}

    public String getDeviceNumber() {
        return deviceNumber;
    }

    public void setDeviceNumber(String deviceNumber) {
        this.deviceNumber = deviceNumber;
    }

	public String getStatusCycleFlag() {
		return statusCycleFlag;
	}

	public void setStatusCycleFlag(String statusCycleFlag) {
		this.statusCycleFlag = statusCycleFlag;
	}

	public String getBoxCpuId() {
		return boxCpuId;
	}

	public void setBoxCpuId(String boxCpuId) {
		this.boxCpuId = boxCpuId;
	}

	public List<ConditionTimeModel> getTimeModelList() {
		return timeModelList;
	}

	public void setTimeModelList(List<ConditionTimeModel> timeModelList) {
		this.timeModelList = timeModelList;
	}

	public List<ConditionSensorModel> getSensorModelList() {
		return sensorModelList;
	}

	public void setSensorModelList(List<ConditionSensorModel> sensorModelList) {
		this.sensorModelList = sensorModelList;
	}

	public List<ConditionStatusModel> getStatusModelList() {
		return statusModelList;
	}

	public void setStatusModelList(List<ConditionStatusModel> statusModelList) {
		this.statusModelList = statusModelList;
	}

	public List<ActionModel> getActionModelList() {
		return actionModelList;
	}

	public void setActionModelList(List<ActionModel> actionModelList) {
		this.actionModelList = actionModelList;
	}

	public List<ActionInfraredModel> getActionInfraredModelList() {
		return actionInfraredModelList;
	}

	public void setActionInfraredModelList(List<ActionInfraredModel> actionInfraredModelList) {
		this.actionInfraredModelList = actionInfraredModelList;
	}
}
